Slider con Tailwind simple

En este tutorial, aprenderás a crear un slider (carrusel) de imágenes con Tailwind CSS. Utilizaremos las utilidades de Tailwind CSS para crear un slider interactivo y responsivo con transiciones.

Ejemplo:

Explora el Mundo

Descubre lugares increíbles con nosotros.

Comienza tu Viaje

Conecta con la Naturaleza

Experiencias únicas al aire libre.

Reserva Ahora

Aventuras Inolvidables

Crea recuerdos que durarán toda la vida.

Únete a Nosotros
<!-- Sección de Hero con Slider sin JavaScript -->
<section class="relative overflow-hidden">
  <!-- Contenedor de las Diapositivas -->
  <div class="relative w-full h-screen">
    <!-- Diapositiva 1 -->
    <input type="radio" name="slider" id="slide-1" class="hidden peer/slide-1" checked>
    <div class="absolute inset-0 transition-opacity duration-1000 opacity-0 peer-checked/slide-1:opacity-100">
      <div class="flex items-center justify-center h-full bg-cover bg-center" style="background-image: url('https://picsum.photos/id/1018/1920/1080');">
        <div class="text-center text-white px-6 bg-black bg-opacity-50 py-8">
          <h1 class="text-5xl font-bold mb-4">Explora el Mundo</h1>
          <p class="text-xl mb-8">Descubre lugares increíbles con nosotros.</p>
          <a href="#" class="bg-primary text-white px-6 py-3 rounded-full hover:bg-blue-800">Comienza tu Viaje</a>
        </div>
      </div>
    </div>

    <!-- Diapositiva 2 -->
    <input type="radio" name="slider" id="slide-2" class="hidden peer/slide-2">
    <div class="absolute inset-0 transition-opacity duration-1000 opacity-0 peer-checked/slide-2:opacity-100">
      <div class="flex items-center justify-center h-full bg-cover bg-center" style="background-image: url('https://picsum.photos/id/1015/1920/1080');">
        <div class="text-center text-white px-6 bg-black bg-opacity-50 py-8">
          <h1 class="text-5xl font-bold mb-4">Conecta con la Naturaleza</h1>
          <p class="text-xl mb-8">Experiencias únicas al aire libre.</p>
          <a href="#" class="bg-primary text-white px-6 py-3 rounded-full hover:bg-blue-800">Reserva Ahora</a>
        </div>
      </div>
    </div>

    <!-- Diapositiva 3 -->
    <input type="radio" name="slider" id="slide-3" class="hidden peer/slide-3">
    <div class="absolute inset-0 transition-opacity duration-1000 opacity-0 peer-checked/slide-3:opacity-100">
      <div class="flex items-center justify-center h-full bg-cover bg-center" style="background-image: url('https://picsum.photos/id/1016/1920/1080');">
        <div class="text-center text-white px-6 bg-black bg-opacity-50 py-8">
          <h1 class="text-5xl font-bold mb-4">Aventuras Inolvidables</h1>
          <p class="text-xl mb-8">Crea recuerdos que durarán toda la vida.</p>
          <a href="#" class="bg-primary text-white px-6 py-3 rounded-full hover:bg-blue-800">Únete a Nosotros</a>
        </div>
      </div>
    </div>
  </div>

  <!-- Controles de Navegación -->
  <div class="absolute bottom-5 left-0 right-0 flex justify-center space-x-4">
    <label for="slide-1" class="cursor-pointer">
      <span class="w-4 h-4 block bg-white rounded-full border-2 border-white"></span>
    </label>
    <label for="slide-2" class="cursor-pointer">
      <span class="w-4 h-4 block bg-white rounded-full border-2 border-white"></span>
    </label>
    <label for="slide-3" class="cursor-pointer">
      <span class="w-4 h-4 block bg-white rounded-full border-2 border-white"></span>
    </label>
  </div>
</section>

1. Contenedor Principal del Slider

<section class="relative overflow-hidden">

2. Contenedor de las Diapositivas

<div class="relative w-full h-screen">

3. Input de Diapositiva (Slide 1)

<input type="radio" name="slider" id="slide-1" class="hidden peer/slide-1" checked>

4. Diapositiva (Slide 1)

<div class="absolute inset-0 transition-opacity duration-1000 opacity-0 peer-checked/slide-1:opacity-100">

5. Contenido de la Diapositiva

<div class="flex items-center justify-center h-full bg-cover bg-center" style="background-image: url('...');">

6. Superposición y Contenido Textual

<div class="text-center text-white px-6 bg-black bg-opacity-50 py-8">

7. Título de la Diapositiva

<h1 class="text-5xl font-bold mb-4">Explora el Mundo</h1>

8. Descripción de la Diapositiva

<p class="text-xl mb-8">Descubre lugares increíbles con nosotros.</p>

9. Botón de Llamado a la Acción (CTA)

<a href="#" class="bg-primary text-white px-6 py-3 rounded-full hover:bg-blue-800">Comienza tu Viaje</a>

10. Controles de Navegación

<div class="absolute bottom-5 left-0 right-0 flex justify-center space-x-4">

11. Etiqueta del Control (para cada diapositiva)

<label for="slide-1" class="cursor-pointer">
  <span class="w-4 h-4 block bg-white rounded-full border-2 border-white"></span>
</label>

Resumen de las Variantes de Estado y Clases Avanzadas

Uso de Peer Variants

Transiciones y Opacidad


Resultado final:

Slider con Tailwind simple